package com.tiantian.filterandInterceptor.config;

import org.springframework.stereotype.Component;

import javax.servlet.*;
import java.io.IOException;


/**
 * -过滤器是基于函数回调的
 * -过滤器实现的是 javax.servlet.Filter 接口，而这个接口是在Servlet规范中定义的，
 * -也就是说过滤器Filter 的使用要依赖于Tomcat等容器，导致它只能在web程序中使用。
 * -过滤器对所有请求都生效，更加适合做一些通用功能。 例如：过滤敏感字符、日志记录
 */
@Component
public class Filter01 implements Filter {
    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        // 在请求处理之前执行的逻辑
        System.out.println("过滤器01 前~");

        // 继续执行链中的下一个filter或servlet
        filterChain.doFilter(servletRequest, servletResponse);

        // 在请求处理之后执行的逻辑
        System.out.println("过滤器01 后~");
    }

 /*   @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }*/

    @Override
    public void destroy() {

    }
}
